/**  
* @Title: IPermissionService.java  
* @Package com.clps.dev.sms.service.sm  
* @Description: IPermissionService.java  
* @author RuiShan.Yang  
* @date 2018-11-27 15:57:28 
* @version V1.0  
*/

package com.clps.dev.sms.service.sm;

import java.util.List;

import com.clps.dev.sms.entity.sm.Permission;

/**  
* @ClassName: IPermissionService  
* @Description: IPermissionService  
* @since JDK 1.8 
* @author RuiShan.Yang  
* @date 2018-11-27 15:57:28  
* 
*/

public interface IPermissionService {


	/**  
	* @Title: addPermission  
	* @Description: 添加一个权限
	* @param permission
	* @return String
	* @throws  
	*/
	public String addPermission(Permission permission);


	/**  
	* @Title: deletePermissionById  
	* @Description: 根据permission ID删除
	* @param permissionId
	* @return String
	* @throws  
	*/
	public String deletePermissionById(Integer permissionId);


	/**  
	* @Title: editPermission  
	* @Description:更新权限
	* @param permission
	* @return String
	* @throws  
	*/
	public String editPermission(Permission permission);

	/**  
	* @Title: queryPermissionById  
	* @Description: 通过id查询permission
	* @param permissionId
	* @return Permission
	* @throws  
	*/
	public Permission queryPermissionById(Integer permissionId);


	/**  
	* @Title: queryPermissionByName  
	* @Description: 通过permission的name查询
	* @param permissionNae
	* @return List<Permission>
	* @throws  
	*/
	public List<Permission> queryPermissionByName(String permissionName);

	
	/**  
	* @Title: queryAllPermission  
	* @Description: 查询所有permission
	* @return List<Permission>
	* @throws  
	*/
	public List<Permission> queryAllPermission();


	/**  
	* @Title: queryPermissionBySql  
	* @Description: 通过SQL语句查询permission
	* @param sql
	* @return List<Permission>
	* @throws  
	*/
	public List<Permission> queryPermissionBySql(String sql);

}
